package cn.iocoder.yudao.module.system.controller.admin.gugu.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

/**
 * 推荐院校项 VO
 *
 * @author 芋道源码
 */
@Schema(description = "管理后台 - 推荐院校项 VO")
@Data
public class CollegeRecommendItemVO {

    @Schema(description = "大学名称", example = "南京大学")
    private String universityName;

    @Schema(description = "招生代码", example = "1101")
    private String recruitCode;

    @Schema(description = "学校所在省份", example = "江苏")
    private String province;

    @Schema(description = "学校所在城市", example = "南京")
    private String city;

    @Schema(description = "学校性质", example = "公办")
    private String propertyName;

    @Schema(description = "学校类别", example = "综合")
    private String categoryName;

    @Schema(description = "学校logo", example = "https://static-file.example.cn/images/南京大学.png")
    private String logo;

    @Schema(description = "推荐类型", example = "CHONG")
    private String type;

    @Schema(description = "志愿类型")
    private String volunteerType;

    @Schema(description = "录取概率", example = "25")
    private Integer enrollProbability;

    @Schema(description = "当年招生计划", example = "45")
    private Integer planNum;

    @Schema(description = "历史招生计划", example = "[{\"2024\":45},{\"2023\":42},{\"2022\":40}]")
    private String historyPlanNum;

    @Schema(description = "招生年份")
    private Integer enrollYear;

    @Schema(description = "实际招生数")
    private Integer enrollNum;

    @Schema(description = "最低录取分数", example = "595")
    private Integer minScore;

    @Schema(description = "最低录取位次", example = "12000")
    private Integer minRanks;

    @Schema(description = "专业组代码", example = "01")
    private String universityMajorGroup;

    @Schema(description = "数据年份", example = "2024")
    private Integer year;

    @Schema(description = "专业数量", example = "2")
    private Integer majorNum;

    @Schema(description = "专业名称", example = "计算机科学与技术")
    private String majorName;

    @Schema(description = "选科要求", example = "物理+化学")
    private String claim;

    @Schema(description = "专业备注", example = "不招色盲色弱")
    private String majorRemarks;

    @Schema(description = "专业代码", example = "080901")
    private String majorCode;

    @Schema(description = "学费", example = "5800")
    private String studyCost;

    @Schema(description = "学制", example = "4年")
    private String studyYear;

    @Schema(description = "历史录取数据", example = "[{\"2024\":\"595,12000,45\"},{\"2023\":\"588,13500,42\"}]")
    private String historyScore;

    @Schema(description = "最低分专业", example = "计算机科学与技术")
    private String lowestMajorName;

    @Schema(description = "学校标签", example = "[\"985\", \"211\", \"双一流\"]")
    private List<String> tags;

    @Schema(description = "学校唯一ID", example = "1001")
    private String universityId;

    @Schema(description = "标签")
    private String tag;

    @Schema(description = "掌上高考ID", example = "1001")
    private Long zsgkId;

    @Schema(description = "一级学科硕士点", example = "15")
    private Integer masterOne;

    @Schema(description = "二级学科硕士点", example = "8")
    private Integer masterTwo;

    @Schema(description = "一级学科博士点", example = "12")
    private Integer doctorOne;

    @Schema(description = "二级学科博士点", example = "6")
    private Integer doctorTwo;

    @Schema(description = "就业率", example = "98.5%")
    private String enrolmentRate;

    @Schema(description = "专业代码列表", example = "080901,080902")
    private String majorCodes;

    @Schema(description = "录取批次", example = "本科批")
    private String batch;

    @Schema(description = "学历层次", example = "本科")
    private String level;

    @Schema(description = "是否VIP推荐", example = "false")
    private Boolean indexVip;

    @Schema(description = "下一年份", example = "2025")
    private Integer nextYear;

    @Schema(description = "下年选科要求", example = "物理+化学")
    private String nextClaim;

    @Schema(description = "选科匹配检查", example = "物理+化学")
    private String checkClaim;

    @Schema(description = "本科水平", example = "一流")
    private String undergraduateLevel;

    @Schema(description = "研究生水平", example = "一流")
    private String postgraduateLevel;

    @Schema(description = "专业水平", example = "A+")
    private String majorLevel;

    @Schema(description = "特殊计划")
    private String specialPlan;

    @Schema(description = "原始学校名称", example = "南京大学")
    private String originUniversityName;

    @Schema(description = "等位分数据", example = "[{\"2024\":\"595\"},{\"2023\":\"592\"},{\"2022\":\"589\"}]")
    private String parityScore;

    @Schema(description = "就业方向", example = "软件开发、算法工程师、产品经理")
    private String careerDirection;

    @Schema(description = "是否在分数区间内", example = "true")
    private Boolean scoreSection;

    @Schema(description = "推荐记录ID", example = "1001001")
    private Long orcId;

    @Schema(description = "学校排名", example = "8")
    private Integer ranking;

    @Schema(description = "推荐理由", example = "C9联盟成员，计算机学科全国前5，就业前景优秀")
    private String recommendationReason;
}
